The present invention relates to a data program operation of a non-volatile memory device and, more particularly, to a non-volatile memory device consisting of a multi-plane and a method of programming the same.
A flash memory device, that is, a non-volatile memory device, can be classified into a single plane type and a multi-plane type depending on the structure of a memory cell array. The single plane type memory device includes only one plane comprising a plurality of memory cell blocks and the multi-plane type memory device includes a plurality of planes respectively comprising a plurality of memory cell blocks.
The flash memory device performs a program operation by employing a write command, address information, and data to be stored, which are received from a data I/O pad connected to the outside, in order to store data in a memory cell.
In the program operation of the flash memory device, a program command code 80h is input through the I/O pad, address information of 5 cycles is input, program data is input, and an execution code 10H is finally input.
According to the program command code, the flash memory device checks an input address, selects a page buffer, and temporarily stores the input program data in a latch circuit of the page buffer. Further, according to the execution code, the flash memory device programs the data that is temporarily stored in the page buffer into a memory cell selected based on the input address.
The time required for the program operation of the flash memory device to be executed can be calculated by the following Equation.T=(K×tWC+tPROG)×N  [Equation 1]
In Equation 1, T denotes a total program time, K denotes the number of page buffers, tWC denotes the time of IO writing per byte, and tPROG denotes the time required to program data into a cell. N denotes the number of times that a write operation is repeated. In Equation 1, a program command time and an address input time are omitted from the total program time T.
From Equation 1, it can be seen that in the program operation of a flash memory device, the time tWC where data is input has a great influence on the program operation time. One of the methods for minimizing the data input time is a method employing a cache write method.
The cache write method refers to a method of receiving next program data while programming data into a memory cell, and storing the received next data in one of several latch circuits included in a page buffer. If this method is used, the total program time can be shortened as follows.T=K×tWC+tPROG  [Equation 2]
In order to use the cache write method when performing a program operation, a latch circuit, which is not influenced by the program operation, must be added to the page buffer. However, a multi-level cell memory device requires a large number of latch circuits included in a page buffer as the level of cell memory is increased. However, if the latch circuits for cache writing are added, it poses problems in minimizing the area of the page buffer circuit and the area of a memory chip and also results in a complicated algorithm.